2023-11-25
요세푸스 문제 0
https://www.acmicpc.net/problem/11866
둥글게 앉은 사람들을 k번째 마다 제거하는 덱 문제
출력 방식 익히기 좋은 문제
# 1. 덱을 사용해 왼쪽으로 k번 돌린 후 popleft한다. # 2. popleft한 값을 순서대로 저장한다. # 3. 덱이 빌 때까지 반복한다. from collections import deque n, k = list(map(int, input().split())) queue = deque([i for i in range(1, n + 1)]) stack = [] while len(queue) != 0: for i in range(k-1): queue.append(queue.popleft()) stack.append(queue.popleft()) print("<", end="") for i in range(len(stack)): if i == len(stack) - 1: print(stack[i], end="") else: print(stack[i], end=", ") print(">")
